1. Field of the Invention
The present invention generally relates to data processing and more particularly to the use of templates and frameworks for application development.
2. Description of the Related Art
During application development, there is often an opportunity to reuse code that has been previously implemented. Reuse of implemented code is advantageous because the code is already created, unit tested and validated. Further, the code has probably undergone rigorous integration testing and systems testing prior to being implemented in a production environment. For the foregoing reasons, it can be appreciated that it is desirable to reuse code during the application building process.
One manner in which code can be reused is by utilizing standard development templates. The basic principal of a standard development template is that a collection of high quality components is copied (from a design perspective) over and over again to create new instances of components. The newly instantiated components, with certain standard functionality already provided, become the foundation of a new application. Adding on to the existing code, or modifying the existing code as required can provide additional functionality needed per the requirements of the particular application being developed.
In an application development environment numerous standard development templates may exist. For example, if three different types of applications are being developed (e.g., document management, process workflow and mail services) in a particular environment, three different standard development templates may be used to serve as a foundation on which the three different types of application can be built.
Application development efficiency can be further enhanced if the components that make up the standard development template leverage framework components. Framework components are standard components that are organized based on functionality and placed into libraries. Framework components may comprise front-end (user interface) based components such as graphic user interface (GUI) window elements including buttons and menus. Framework components may also comprise back-end components such as a file IO class and security class. The framework components may be accessible to the entire development environment and made available to all the standard development templates.
An example of a development environment that can benefit from the use of standard development templates and core components is the Lotus Notes® development environment, a product available from International Business Machines of Armonk, N.Y. Lotus Notes® is used to develop applications (also referred to as projects) that solve particular business problems. Each project contains design elements or components such as forms, views, shared actions and agents. When the development of a new project begins, the development process is made more efficient via the use of standard development templates and framework components. However, developers and administrators face a difficult and cumbersome task in organizing, managing and using standard development templates and framework components.
Therefore, there is a need for methods and systems for organizing and managing standard development templates for use in application development. Preferably, the methods and systems will facilitate efficient implementation of standard development templates and core components and improve the efficiency of the application development environment.